import {
    formatDate
} from '../../utils/util';
Component({
    externalClasses: [],
    properties: {
        news: {
            type: Object,
            observer: function (newVal, oldVal, chengedPath) {
                // console.log(newVal);
            }
        },
    },
    data: {
        opacity: 0,
        timeStr: '暂无',
        parsedNodes: null,
    },
    methods: {
        closeButtonTapped: function (e) {
            const _this = this;
            this.setData({
                opacity: 0
            }, () => {
                setTimeout(() => {
                    _this.triggerEvent('close-button-tapped');
                }, 500);
            });
        }
    },
    created: function (options) {
        // 组件生命周期函数，在组件实例进入页面节点树时执行，注意此时不能调用 setData
    },
    attached: function () {
        // 组件生命周期函数，在组件实例进入页面节点树时执行
    },
    ready: function () {
        let paragraphs = this.data.news.content.split('\n');
        let parsedNodes = paragraphs.map(text => ({
            type: 'text',
            text: text
        })).reduce((preVal, currentV, index) => {
            if (index !== 0) {
                preVal.push({
                    name: 'br'
                });
            }
            preVal.push(currentV);
            return preVal;
        }, []);
        this.setData({
            opacity: 1,
            timeStr: formatDate(new Date(this.data.news.timestamp)),
            parsedNodes: parsedNodes
        });
        // 组件生命周期函数，在组件布局完成后执行，此时可以获取节点信息（使用 SelectorQuery ）
    },
    moved: function () {
        // 组件生命周期函数，在组件实例被移动到节点树另一个位置时执行
    },
    detached: function () {
        // 组件生命周期函数，在组件实例被从页面节点树移除时执行
    },
})